Skip to content

ci: split publishing out of the reusable CI workflow - #43

Merged
Foorack merged 8 commits into
mainfrom
ci/split-publish-workflow
Nov 7, 2026
Merged

Foorack merged 8 commits into
mainfrom
ci/split-publish-workflow

Conversation

@Foorack

@Foorack Foorack commented Nov 7, 2026 •

Copy link
Copy Markdown
Member

Spec CI broke after switching to Trusted Publishing for C#:

The nested job 'publish' is requesting 'contents: write, id-token: write',
but is only allowed 'contents: read, id-token: none'.

Spec calls ci.yaml and the publish job needs write + id-token. A called workflow can't ask for more than the caller allows.

Fix:

  • ci.yaml - build only, read-only, still called from spec
  • release.yaml - new, does the commit back to main and the NuGet push

Reading tip: the first commit is a plain rename of ci.yaml to release.yaml so the file keeps its history. The new ci.yaml comes after that.

@Foorack
Foorack force-pushed the ci/split-publish-workflow branch from dc5c5e1 to de75d28 Compare November 7, 2026 19:25
ci.yaml is called as a reusable workflow by vrchatapi/specification, and a
nested job may not request more permissions than the calling job grants. The
publish job needs contents: write and id-token: write for NuGet Trusted
Publishing, which forced every caller to hand both over.

It now only generates and builds, read-only, and exposes the generated
version as a workflow_call output. release.yaml calls it for the build and
keeps the elevated permissions on its own publish job.
@Foorack
Foorack force-pushed the ci/split-publish-workflow branch from de75d28 to db69c5b Compare November 7, 2026 19:29
@Foorack
Foorack requested a review from ariesclark November 7, 2026 19:49
Foorack and others added 6 commits November 7, 2026 22:36
@Foorack
Foorack merged commit 87b6f3e into main Nov 7, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants